package br.com.avaliacao.controllers;

import br.com.avaliacao.model.dao.CRUD;
import br.com.avaliacao.model.dao.ItemAvaliacaoDAO;
import br.com.avaliacao.model.entities.ItemAvaliacao;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;

@ManagedBean(name="itemAvaliacaoBean")
@RequestScoped
public class ItemAvaliacaoController {
    private ItemAvaliacao itemAvaliacao;
    private DataModel lista;
    
    public ItemAvaliacaoController(){
            this.itemAvaliacao = new ItemAvaliacao();
    }
    
    public DataModel getListaItemAvaliacao(){
        List<ItemAvaliacao> ia = new ItemAvaliacaoDAO().retLista();
        lista = new ListDataModel(ia);
        return lista;
    }
    
    public ItemAvaliacao getItemAvaliacao(){
        return itemAvaliacao;
    }
    
    public void setItemAvaliacao(ItemAvaliacao ia){
        this.itemAvaliacao = ia;
    }
    
    public String save(){
        CRUD dao = new ItemAvaliacaoDAO();
        if(this.itemAvaliacao.getId() > 0)
            dao.atualizar(itemAvaliacao);
        else
            dao.inserir(itemAvaliacao);
        return "index";
    }
    
    public String excluir(){
        ItemAvaliacao itemAvaliacaoTemp = (ItemAvaliacao) lista.getRowData();
        CRUD dao = new ItemAvaliacaoDAO();
        dao.excluir(itemAvaliacaoTemp);
        return "index";
    }
    
    public String prepararAdicionarItemAvaliacao(){
        itemAvaliacao = new ItemAvaliacao();
        return "gerenciar";
    }
    
    public String prepararAlterarCriterio(){
        itemAvaliacao = (ItemAvaliacao) lista.getRowData();
        return "gerenciar";
    }
}
